Engine control strategy

ABSTRACT

At least some implementations of a method of distinguishing between two loads being driven by an engine, includes the steps of determining engine speed at defined intervals, comparing a second engine speed against a previously determined first engine speed, determining if the second engine speed fits an expected pattern of engine speeds, and counting either the number of incidents where the second engine speed does not fit the expected pattern, or the number of incidents where the second engine speed does fit the expected pattern, or some combination of these two. A method of determining if an engine is operating at least near a lean limit of its air to fuel ratio is also disclosed.

REFERENCE TO CO-PENDING APPLICATION

This application is a divisional of U.S. patent application Ser. No.15/743,857 filed on Jan. 11, 2018 which is a national phase ofPCT/US2016/043572, filed Jul. 22, 2016 and claims the benefit of U.S.Provisional Application No. 62/195,348 filed Jul. 22, 2015. The entirecontents of these priority applications are incorporated herein byreference in their entireties.

TECHNICAL FIELD

The present disclosure relates generally to an engine feedback controlstrategy.

BACKGROUND

Combustion engines are provided with a fuel mixture that typicallyincludes liquid fuel and air. The air/fuel ratio of the fuel mixture maybe calibrated for a particular engine, but different operatingcharacteristics such as type of fuel, altitude, condition of filters orother engine components, and differences among engines and othercomponents in a production run may affect engine operation. Also,different loads or tools may be used with a given engine and theyloads/tools may affect engine operation or performance.

SUMMARY

At least some implementations of a method of distinguishing between twoloads being driven by an engine, includes the steps of determiningengine speed at defined intervals, comparing a second engine speedagainst a previously determined first engine speed, determining if thesecond engine speed fits an expected pattern of engine speeds, andcounting either the number of incidents where the second engine speeddoes not fit the expected pattern, or the number of incidents where thesecond engine speed does fit the expected pattern, or some combinationof these two. The engine may be a four stroke engine and the definedinterval is one engine revolution. In at least some implementations, thetime or speed of each engine revolution is compared to the time or speedfor the immediately prior engine revolution and the expected patternincludes alternating faster and slower revolutions. The method may alsoinclude tallying all counted incidents over a predetermined number ofengine revolutions. And the tally may be compared against stored data,where the stored data includes information relating to at least twoengine loads, to determine which of the engine loads is being driven bythe engine based on the tally comparison.

At least some implementations of a method of determining if an engine isoperating at least near a lean limit of its air to fuel ratio includesthe steps of:

determining for a plurality of engine cycles the number of such enginecycles in which the engine speed either follows the normal pattern orthe number of such engine cycles are outliers from such normal pattern;and

if less than half of the engine cycles of such plurality follow thenormal pattern or at least half are outliers from the normal patternenriching the fuel to air ratio.

For each engine cycle of the plurality of engine cycles it may bedetermined whether or not each pair of engine intake and exhaust speedsfollows the normal pattern. In at least some implementations, if lessthan half of the engine intake and exhaust speed pairs follow the normalpattern or at least half are outliers from the normal pattern the fuelto air ratio is enriched. For each engine cycle of the plurality ofengine cycles it may be determined whether at least half of each pair ofengine intake and exhaust speeds are outliers from the normal patternand if so the fuel to air ratio is enriched. Each plurality of enginecycles may include, for example, at least 16 successive pairs of engineintake and exhaust engine speeds.

BRIEF DESCRIPTION OF THE DRAWINGS

The following detailed description of preferred embodiments and bestmode will be set forth with reference to the accompanying drawings, inwhich:

FIG. 1 is a schematic view of an engine and a carburetor including afuel mixture control device;

FIG. 2 is a fragmentary view of a flywheel and ignition components ofthe engine;

FIG. 3 is a schematic diagram of an ignition circuit;

FIG. 4 is a flowchart for an engine control process;

FIG. 5 is a graph of a representative engine power curve;

FIGS. 6-8 are graphs showing several variables that may be trackedduring an engine speed test;

FIG. 9 is a flow chart of an example of an engine idle operation controlprocess;

FIG. 10 is a flow chart of an example of an engine ignition and/or fuelcontrol process;

FIG. 11 shows an engine powered device with a plurality ofinterchangeable loads or tools that may driven by the engine;

FIG. 12 is a graph of various engine parameters in use of a small engineweed trimming device utilizing a string as the trimming tool;

FIG. 13 is a graph of an indicator value and lambda as a function ofengine speed and engine revolutions for an engine driving a string tool;

FIG. 14 is a graph of an indicator value and lambda as a function ofengine speed and engine revolutions for an engine driving a blade tool;

FIG. 15 is a graph of curves of lambda versus engine speed for a fourstroke single cylinder small displacement engine;

FIG. 16A is an initial part of a flow chart for an engine fuel controlprocess;

FIG. 16B is the rest of a flow chart of FIG. 12A for the engine fuelcontrol process; and

FIG. 17 is a graph showing various variables of the engine fuel controlprocess of FIGS. 16A and 16B of a four stroke single cylinder engine.

DETAILED DESCRIPTION OF PREFERRED EMBODIMENTS

Referring in more detail to the drawings, FIG. 1 illustrates an engine 2and a charge forming device 4 that delivers a fuel and air mixture tothe engine 2 to support engine operation. In at least oneimplementation, the charge forming device 4 includes a carburetor, andthe carburetor may be of any suitable type including, for example,diaphragm and float bowl carburetors. A diaphragm-type carburetor 4 isshown in FIG. 1. The carburetor 4 takes in fuel from a fuel tank 6 andincludes a mixture control device 8 capable of altering the air/fuelratio of the mixture delivered from the carburetor. To determine adesired instantaneous air/fuel ratio, a comparison is made of the enginespeed before and after the air/fuel ratio is altered. Based upon thatcomparison, the mixture control device 8 or some other component may beused to alter the fuel and air mixture to provide a desired air/fuelratio.

The engine speed may be determined in a number of ways, one of whichuses signals within an ignition system 10 such as may be generated by amagnet on a rotating flywheel 12. FIGS. 2 and 3 illustrates an exemplarysignal generation or ignition system 10 for use with an internalcombustion engine 2, such as (but not limited to) the type typicallyemployed by hand-held and ground-supported lawn and garden equipment.Such equipment includes chainsaws, trimmers, lawn mowers, and the like.The ignition system 10 could be constructed according to one of numerousdesigns, including magneto or capacitive discharge designs, such that itinteracts with an engine flywheel 12 and generally includes a controlsystem 14, and an ignition boot 16 for connection to a spark plug (notshown).

The flywheel 12 rotates about an axis 20 under the power of the engine 2and includes magnets or magnetic sections 22. As the flywheel 12rotates, the magnetic sections 22 spin past and electromagneticallyinteract with components of the control system 14 for sensing enginespeed among other things.

The control system 14 includes a ferromagnetic stator core or lamstack30 having wound thereabout a charge winding 32, a primary ignitionwinding 34, and a secondary ignition winding 36. The primary andsecondary windings 34, 36 basically define a step-up transformer orignition coil used to fire a spark plug. The control system alsoincludes a circuit 38 (shown in FIG. 3), and a housing 40, wherein thecircuit 38 may be located remotely from the lamstack 30 and the variouswindings.

As the magnetic sections 22 are rotated past the lamstack 30, a magneticfield is introduced into the lamstack 30 that, in turn, induces avoltage in the various windings. For example, the rotating magneticsections 22 induce a voltage signal in the charge winding 32 that isindicative of the number of revolutions of the engine 2 in the controlsystem. The signal can be used to determine the rotational speed of theflywheel 12 and crankshaft 19 and, hence, the engine 2. Finally, thevoltage induced in the charge winding 32 is also used to power thecircuit 38 and charge an ignition discharge capacitor 62 in knownmanner. Upon receipt of a trigger signal, the capacitor 62 dischargesthrough the primary winding 34 of the ignition coil to induce astepped-up high voltage in the secondary winding 36 of the ignition coilthat is sufficient to cause a spark across a spark gap of a spark plug47 to ignite a fuel and air mixture within a combustion chamber of theengine.

In normal engine operation, downward movement of an engine piston duringa power stroke drives a connecting rod (not shown) that, in turn,rotates the crankshaft 19, which rotates the flywheel 12. As themagnetic sections 22 rotate past the lamstack 30, a magnetic field iscreated which induces a voltage in the nearby charge winding 32 which isused for several purposes. First, the voltage may be used to providepower to the control system 14, including components of the circuit 38.Second, the induced voltage is used to charge the main dischargecapacitor 62 that stores the energy until it is instructed to discharge,at which time the capacitor 62 discharges its stored energy acrossprimary ignition winding 34. Lastly, the voltage induced in the chargewinding 32 is used to produce an engine speed input signal, which issupplied to a microcontroller 60 of the circuit 38. This engine speedinput signal can play a role in the operation of the ignition timing, aswell as controlling an air/fuel ratio of a fuel mixture delivered to theengine, as set forth below.

Referring now primarily to FIG. 3, the control system 14 includes thecircuit 38 as an example of the type of circuit that may be used toimplement the ignition timing control system 14. However, manyvariations of this circuit 38 may alternatively be used withoutdeparting from the scope of the invention. The circuit 38 interacts withthe charge winding 32, primary ignition winding 34, and preferably akill switch 48, and generally comprises the microcontroller 60, anignition discharge capacitor 62, and an ignition thyristor 64.

The microcontroller 60 as shown in FIG. 3 may be an 8-pin processor,which utilizes internal memory or can access other memory to store codeas well as for variables and/or system operating instructions. Any otherdesired controllers, microcontrollers, or microprocessors may be used,however. Pin 1 of the microcontroller 60 is coupled to the chargewinding 32 via a resistor and diode, such that an induced voltage in thecharge winding 32 is rectified and supplies the microcontroller withpower. Also, when a voltage is induced in the charge winding 32, aspreviously described, current passes through a diode 70 and charges theignition discharge capacitor 62, assuming the ignition thyristor 64 isin a non-conductive state. The ignition discharge capacitor 62 holds thecharge until the microcontroller 60 changes the state of the thyristor64. Microcontroller pin 5 is coupled to the charge winding 32 andreceives an electronic signal representative of the engine speed. Themicrocontroller uses this engine speed signal to select a particularoperating sequence, the selection of which affects the desired sparktiming. Pin 7 is coupled to the gate of the thyristor 64 via a resistor72 and transmits from the microcontroller 60 an ignition signal whichcontrols the state of the thyristor 64. When the ignition signal on pin7 is low, the thyristor 64 is nonconductive and the capacitor 62 isallowed to charge. When the ignition signal is high, the thyristor 64 isconductive and the capacitor 62 discharges through the primary winding34, thus causing an ignition pulse to be induced in the secondarywinding 36 and sent on to the spark plug 47. Thus, the microcontroller60 governs the discharge of the capacitor 62 by controlling theconductive state of the thyristor 64. Lastly, pin 8 provides themicrocontroller 60 with a ground reference.

To summarize the operation of the circuit, the charge winding 32experiences an induced voltage that charges ignition discharge capacitor62, and provides the microcontroller 60 with power and an engine speedsignal. The microcontroller 60 outputs an ignition signal on pin 7,according to the calculated ignition timing, which turns on thethyristor 64. Once the thyristor 64 is conductive, a current paththrough the thyristor 64 and the primary winding 34 is formed for thecharge stored in the capacitor 62. The current discharged through theprimary winding 34 induces a high voltage ignition pulse in thesecondary winding 36. This high voltage pulse is then delivered to thespark plug 47 where it arcs across the spark gap thereof, thus ignitingan air/fuel charge in the combustion chamber to initiate the combustionprocess.

As noted above, the microcontroller 60, or another controller, may playa role in altering an air/fuel ratio of a fuel mixture delivered by acarburetor 4 (for example) to the engine 2. In the embodiment of FIG. 1,the carburetor 4 is a diaphragm type carburetor with a diaphragm fuelpump assembly 74, a diaphragm fuel metering assembly 76, and apurge/prime assembly 78, the general construction and function of eachof which is well-known. The carburetor 4 includes a fuel and air mixingpassage 80 that receives air at an inlet end and fuel through a fuelcircuit 82 supplied with fuel from the fuel metering assembly 76. Thefuel circuit 82 includes one or more passages, port and/or chambersformed in a carburetor main body. One example of a carburetor of thistype is disclosed in U.S. Pat. No. 7,467,785, the disclosure of which isincorporated herein by reference in its entirety. The mixture controldevice 8 is operable to alter the flow of fuel in at least part of thefuel circuit to alter the air/fuel ratio of a fuel mixture deliveredfrom the carburetor 4 to the engine to support engine operation ascommanded by a throttle.

For a given throttle position, the power output for an engine will varyas a function of the air/fuel ratio. A representative engine power curve94 is shown in FIG. 5 as a function of air/fuel ratio, where theair/fuel ratio becomes leaner from left-to-right on the graph. Thiscurve 94 shows that the slope of the curve on the rich side is notablyless than the slope of the curve on the lean side. Hence, when a richerfuel mixture is enleaned the engine speed will generally increase by alesser amount than when a leaner fuel mixture is enleaned by the sameamount. This is shown in FIG. 5, where the amount of enleanment betweenpoints 96 and 98 is the same as between points 100 and 102, yet theengine speed difference is greater between points 100 and 102 than it isbetween points 96 and 98. In this example, points 96 and 98 are richerthan a fuel mixture that corresponds to engine peak power output, whilepoint 100 corresponds to a fuel mixture that provides engine peak poweroutput and point 102 is leaner than all of the other points.

The characteristics of the engine power curve 94 may be used in anengine control process 84 that determines a desired air/fuel ratio for afuel mixture delivered to the engine. One example of an engine controlprocess 84 is shown in FIG. 4 and includes an engine speed test whereinengine speed is determined as a function of a change in the air/fuelratio of the fuel mixture, and an analysis portion where data from theengine speed test is used to determine or confirm a desired air/fuelratio of the fuel mixture.

The engine control process 84 begins at 86 and includes one or moreengine speed tests. Each engine speed test may essentially include threesteps. The steps include measuring engine speed at 87, changing theair/fuel ratio of the fuel mixture provided to the engine at 88, andthen measuring the engine speed again at 92 after at least a portion ofthe air/fuel ratio change has occurred.

The first step is to measure the current engine speed before the fuelmixture is enleaned. Engine speed may be determined by themicrocontroller 60 as noted above, or in any other suitable way. This isaccomplished, in one implementation, by measuring three engine speedparameters with the first being the cyclic engine speed. This is thetime difference for one revolution of the engine. In most engines, thereis a large amount of repeatable cyclic engine speed variation along witha significant amount of non-repeatable cyclic engine speed variation.This can be seen in FIG. 6, where the cyclic engine speed is shown at104. Because this cyclic variability is difficult to use in furtherdeterminations, a rolling average (called F1-XX) is created, where XX isthe number of revolutions being averaged, and generally F1 is a lowaveraging value such as 4 or 6. This greatly eliminates the largerepeatable cyclic engine speed variation but does not dampen out toomuch the non-repeatable cyclic engine speed variation. The third enginespeed value is F2-XX, and F2 is a greater averaging value, such as 80revolutions. This amount of averaging greatly dampens out any variationsof speed change and the intent is to dampen out the effect of theenleanment engine speed change. Now that there are two usable rpmvalues, F1-6 and F2-80 in this example, the difference of these valuescan be used to represent the engine speed change caused by theenleanment of the fuel mixture during an engine speed test.

In addition to measuring engine speed, the engine speed test includeschanging the air/fuel ratio of the fuel mixture delivered to the engine.This may be accomplished with the mixture control device, e.g. solenoidvalve 8 may be actuated thereby changing an air/fuel ratio of a mixturedelivered to the engine 2 from the carburetor 4. In at least someimplementations, the solenoid valve 8 may be actuated to its closedposition to reduce fuel flow to a main fuel port or jet 90, therebyenleaning the fuel and air mixture. The valve 8 may be closed for aspecific time period, or a duration dependent upon an operationalparameter, such as engine speed. In one form, the valve 8 is closed (ornearly closed) for a certain number or range of engine revolutions, suchas 1 to 150 revolutions. This defines an enleanment period wherein theleaner fuel and air mixture is delivered to the engine 2. Near, at orjust after the end of the enleanment period, the engine speed is againdetermined at 92 as noted above.

FIGS. 6-8 show engine speed (in rpm) versus number of engine revolutionsduring one or more engine speed tests. F1-6 is shown by line 106, F2-80is shown by line 108, the solenoid actuation signal is shown by line110, and a fuel/air ratio (Lambda) is shown by line 112.

FIG. 6 shows the initial air/fuel ratio to be rich at Lambda=0.81. Theamount of enleanment in the example test was 50 degrees for 20revolutions. This means that the solenoid valve was actuated 50 degreesearlier in the engine stroke than it would have been for normal engineoperation (e.g. operation other than during the test). The increasedduration of solenoid actuation leads to an enleaned fuel mixture. Fromthis enleanment, the average rpm difference of F1-6 and F2-80 is 30 rpm.Because the enleanment is so large, 50 degrees, a decrease of 30 rpm isobserved even though the initial air/fuel ratio is still 6% richer thana fuel mixture ratio that would yield peak engine power.

FIG. 7 shows the same 50 degree enleanment test for 20 revolutions butthe starting air/fuel ratio is at Lambda=0.876 which approximatelycorresponds to peak engine power. The average engine speed differencebetween F1-6 and F2-80 in this example is 148 rpm, approximately fivetimes greater than the speed difference from a starting air/fuel rationof Lambda=0.81.

Because the process as described involves enleaning a fuel mixture, theinitial or calibrated air/fuel ratio should be richer than desired. Thisensures that at least some enleanment will lead to a desired air/fuelratio. In at least some implementations, the initial air/fuel ratio maybe up to about 30% richer than the fuel mixture corresponding to peakengine power. Instead of or in addition to enleaning, enriching the fuelmixture may be possible in a given carburetor construction, and in thatcase the engine speed test could include an enriching step if an undulylean air/fuel ratio where determined to exist. Enriching may be done,for example, by causing additional fuel to be supplied to the engine, orby reducing air flow. The process may be simpler by starting with aricher fuel mixture and enleaning it, as noted herein.

Referring again to the engine control process shown in FIG. 4, the twoengine speed measurements obtained at 87 and 92 are compared at 93. Toimprove the accuracy of the engine control process, several engine speedtests may be performed, with a counter incremented at 97 after eachengine speed test, and the counter compared to a threshold at 99 todetermine if a desired number of engine speed tests have been performed.If a desired number of tests have been performed, the process 84 thenanalyzes the data from the engine speed test(s).

To determine whether the fuel mixture delivered to the engine before theengine speed tests were performed was within a desired range of air/fuelratios, the engine speed differences determined at 93 are comparedagainst one or more thresholds at 95. Minimum and maximum thresholdvalues may be used for the engine speed difference that occurs as aresult of enleaning the fuel mixture provided to the engine. An enginespeed difference that is below the minimum threshold (which could be acertain number of rpm's) likely indicates that the air/fuel ratio beforethat enleanment was richer than a mixture corresponding to peak enginepower. Conversely, an engine speed difference that is above the maximumthreshold (which could be a certain number of rpm's) indicates that theair/fuel ratio became too lean (indicating the fuel mixture startedleaner than a peak power fuel mixture, as noted above). In at least someimplementations, the minimum threshold is 15 rpm, and the maximumthreshold is 500 rpm or higher. These values are intended to beillustrative and not limiting—different engines and conditions maypermit use of different thresholds

In the process 84 shown in FIG. 4, the engine speed test is performedmultiple times in a single iteration of the process 84. In one iterationof the process 84, it is determined at 95 if the engine speed differenceof any one or more of the engine speed tests is within the thresholdvalues, and if so, the process may end at 101. That is, if a thresholdnumber (one or more) of the determined engine speed differences from 93are within the thresholds, the process may end because the startingair/fuel ratio (e.g. the air/fuel ratio of the mixture prior to thefirst engine speed test of that process iteration) is at or within anacceptable range of a desired air/fuel ratio. In one implementation,five engine speed tests may be performed, and an engine speed differencewithin the thresholds may be required from at least three of the fiveengine speed tests. Of course, any number of engine speed tests may beperformed (including only one) and any number of results within thethresholds may be required (including only one and up to the number ofengine speed tests performed).

If a threshold number of engine speed differences (determined at 93) arenot within the thresholds, the air/fuel ratio of the mixture may bealtered at 103 to a new air/fuel ratio and the engine speed testsrepeated using the new air/fuel ratio. At 95, if an undesired number ofengine speed differences were less than the minimum threshold, theair/fuel ratio of the fuel mixture may be enleaned at 103 before theengine speed tests are repeated. This is because an engine speeddifference less than the minimum threshold indicates the fuel mixture at87 was too rich. Hence, the new air fuel ratio from 103 is leaner thanwhen the prior engine speed tests were performed. This can be repeateduntil a threshold number of engine speed differences are within thethresholds, which indicates that the fuel mixture provided to the enginebefore the engine speed tests were conducted (e.g. at 87) is a desiredair/fuel ratio. Likewise, at 95, if an undesired number of engine speeddifferences were greater than the maximum threshold, the air/fuel ratioof the fuel mixture may be enleaned less, or even enriched, at 103before the engine speed tests are repeated. This is because an enginespeed difference greater than the maximum threshold indicates the fuelmixture at 87 was too lean. Hence, the new air fuel ratio from 103, inthis instance, is richer than when the prior engine speed tests wereperformed. This also can be repeated until a threshold number of enginespeed differences are within the thresholds, with a different startingair/fuel ratio for each iteration of the process.

When a desired number of satisfactory engine speed differences (i.e.between the thresholds) occur at a given air/fuel ratio, that air/fuelratio may be maintained for further operation of the engine. That is,the solenoid valve 8 may be actuated during normal engine operationgenerally in the same manner it was for the engine speed tests thatprovided the satisfactory results.

FIG. 8 shows a fuel mixture adjustment test series starting from a richair/fuel ratio of about Lambda=0.7, and ending with an air/fuel ratio ofabout Lambda=0.855. In this series, the enleanment step was repeatedseveral times until a desired number of engine speed differences withinthe thresholds occurred. That resulted in a chosen air/fuel ratio ofabout Lambda=0.855, and the engine may thereafter be operated with afuel mixture at or nearly at that value for improved engine performanceby control of the solenoid valve 8 or other mixture control device(s).

As noted above, instead of trying to find an engine speed difference(after changing the air/fuel ratio) that is as small as possible toindicate the engine peak power fuel mixture, the process may look for arelatively large engine speed difference, which may be greater than aminimum threshold. This may be beneficial because it can sometimes bedifficult to determine a small engine speed difference during real worldengine usage, when the engine is under load and the load may vary duringthe air/fuel ratio testing process. For example, the engine may be usedwith a tool used to cut grass (e.g. weed trimmer) or wood (e.g.chainsaw). Of course, the engine could be used in a wide range ofapplications. By using a larger speed difference in the process, the“noise” of the real world engine load conditions have less of an impacton the results. In addition, as noted above, there can be significantvariances in cyclic speed during normal operation of at least some smallengines making determination of smaller engine speed differences verydifficult.

As noted above, the engine load may change as a tool or device poweredby the engine is in use. Such engine operating changes may occur whilethe engine speed test is being conducted. To facilitate determining ifan engine operating condition (e.g. load) has changed during the enginespeed test, the engine speed may be measured a third time, a sufficientperiod of time after the air/fuel ratio is changed during an enginespeed test to allow the engine to recover after the air/fuel ratiochange. If the first engine speed (taken before the fuel mixture change)and the third engine speed (taken after the fuel mixture change andafter a recovery period) are significantly different, this may indicatea change in engine load occurred during the test cycle. In thatsituation, the engine speed change may not have been solely due to thefuel mixture change (enleanment) during the engine speed test. That testdata may either be ignored (i.e. not used in further calculation) or acorrection factor may be applied to account for the changed enginecondition and ensure a more accurate air/fuel ratio determination.

In one form, and as noted above, the mixture control device that is usedto change the air/fuel ratio as noted above includes a valve 8 thatinterrupts or inhibits a fluid flow within the carburetor 4. In at leastone implementation, the valve 8 affects a liquid fuel flow to reduce thefuel flow rate from the carburetor 4 and thereby enlean the fuel and airmixture delivered from the carburetor to the engine. The valve may beelectrically controlled and actuated. An example of such a valve is asolenoid valve. The valve 8 may be reciprocated between open and closedpositions when the solenoid is actuated. In one form, the valve preventsor at least inhibits fuel flow through a passage 120 (FIG. 1) when thevalve is closed, and permits fuel flow through the passage when thevalve is opened. As shown, the valve 8 is located to control flowthrough a portion of the fuel circuit that is downstream of the fuelmetering assembly and upstream of a main fuel jet that leads into thefuel and air mixing passage. Of course, the valve 8 may be associatedwith a different portion of the fuel circuit, if desired. By opening orclosing the valve 8, the flow rate of fuel to the main fuel jet isaltered (i.e. reduced when the valve is closed) as is the air/fuel ratioof a fuel mixture delivered from the carburetor. A rotary throttle valvecarburetor, while not required, may be easily employed because all fuelmay be provided to the fuel and air mixing passage from a single fuelcircuit, although other carburetors may be used.

In some engine systems, an ignition circuit 38 may provide the powernecessary to actuate the solenoid valve 8. A controller 60 associatedwith or part of the ignition circuit 38 may also be used to actuate thesolenoid valve 8, although a separate controller may be used. As shownin FIG. 3, the ignition circuit 38 may include a solenoid driversubcircuit 130 communicated with pin 3 of the controller 60 and with thesolenoid at a node or connector 132. The controller may be aprogrammable device and may have various tables, charts or otherinstructions accessible to it (e.g. stored in memory accessible by thecontroller) upon which certain functions of the controller are based.

The timing of the solenoid valve, when it is energized during theportion of the time when fuel is flowing into the fuel and air mixingpassage, may be controlled as a calibrated state in order to determinethe normal air/fuel ratio curve. To reduce power consumption by thesolenoid, the fuel mixture control process may be implemented (that is,the solenoid may be actuated) during the later portion of the time whenfuel flows to the fuel and air mixing passage (and fuel generally flowsto the fuel metering chamber during the engine intake stroke). Thisreduces the duration that the solenoid must be energized to achieve adesired enleanment. Within a given window, energizing the solenoidearlier within the fuel flow time results in greater enleanment andenergizing the solenoid later results in less enleanment. In one exampleof an enleanment test, the solenoid may be energized during a briefnumber of revolutions, such as 30. The resultant engine speed would bemeasured around the end of this 30 revolution enleanment period, andthereafter compared with the engine speed before the enleanment period.

With a 4-stroke engine, the solenoid actuated enleanment may occur everyother engine revolution or only during the intake stroke. This sameconcept of operating the solenoid every other revolution could work on a2-stroke engine with the main difference being the solenoid energizedtime would increase slightly. At slower engine speeds on a 2-strokeengine the solenoid control could then switch to every revolution whichmay improve both engine performance and system accuracy.

It is also believed possible to utilize the system to provide a richerair/fuel mixture to support engine acceleration. This may beaccomplished by altering the ignition timing (e.g. advancing ignitiontiming) and/or by reducing the duration that the solenoid is energizedso that less enleanment, and hence a richer fuel mixture, is provided.When the initial carburetor calibration is rich (e.g. approximately20-25% rich), no solenoid actuation or less solenoid actuation willresult in a richer fuel mixture being delivered to the engine. Further,if the amount of acceleration or acceleration rate can be sensed ordetermined, a desired enrichment amount could be mapped or determinedbased on the acceleration rate. Combining both the ignition timingadvance and the fuel enrichment during transient conditions, bothacceleration and deceleration can be controlled for improved engineperformance. Ignition timing may be controlled, in at least someimplementations, as disclosed in U.S. Pat. No. 7,000,595, the disclosureof which is incorporated by reference herein, in its entirety.

Idle engine speed can be controlled using ignition spark timing. Whilenot wishing to be held to any particular theory, it is currentlybelieved that using a similar concept, fuel control could be used toimprove the idle engine speed control and stability. This could beparticularly useful during the end of transient engine conditions suchas come-down. The combination of ignition and fuel control during idlecould improve engine performance.

Ignition timing control is considered a fast response control method inthat the engine speed or other engine parameter may change quickly whenthe ignition timing is changed. However, the controllable engine speedrange is constrained by the maximum and minimum amount of ignitiontiming advance the engine can tolerate. Air/fuel mixture changes areconsidered a somewhat slower response control method in that the engineoperating changes may be slower than with an ignition timing change.Combining the slower response air fuel mixture control with the fasterresponse ignition control can greatly expand the engine speed controlrange, and this may be particularly useful, in at least some engines andapplications, at engine idle or near idle operating speeds andconditions. Of course, the innovations disclosed herein are not limitedto idle and near-idle engine operation.

As noted above, the range of engine speed control that may be achievedby ignition timing control (e.g. advancing or retarding ignition events)is confined to the combustible range of ignition advance. Practicallimitations could be even narrower in any given engine application,around 20-30 degrees of ignition advance, to ensure proper engineperformance such as acceptable acceleration, roll-out, come-down, etc.While most engines can experience performance benefits from ignitiontiming based idle engine speed control, it is possible to exceed theignition control range which can negatively affect engine performance inat least some instances, such as when different fuel is used or the airdensity changes from altitude and temperature changes. Some of thesechanges or combinations of changes can effectively exceed the ignitiontiming idle speed control range resulting in the idle speed exceedingits specified set-point. To expand the effective idle engine speedcontrol window the addition of fuel and air mixture control (i.e.changing the air/fuel ratio of the mixture delivered to the engine) canbe combined with ignition timing.

In a combined control system, a desired threshold of ignition timingchange may be established, and a desired engine idle speed threshold,likely set as a range of speed, may also be established. Idle enginespeed outside of the engine idle speed threshold may first result in achange of the engine ignition timing. The ignition timing may be alteredup to the ignition timing change threshold, and if the engine speed endsup within the engine idle speed threshold by only the change in ignitiontiming, nothing more needs to be done. Subsequent engine speed changesmay be handled in the same manner. If, however, the ignition timing isaltered up to the threshold ignition timing change and the engine speedis still outside of the engine speed threshold, then the fuel and airmixture ratio may be altered until the engine speed is within thethreshold. This combination of ignition timing control and air/fuelmixture control can greatly expand the ability to control engine idlespeed for all environmental conditions. Further, utilizing the fasterresponse ignition timing control as the first measure to control engineidle speed enables more rapid engine speed control in many instances,and only when that is insufficient is the slower response fuel/airadjustment control implemented. This enables more rapid and responsiveengine speed control.

Increases in spark advance (where the spark is the start of an ignitionevent) generally result in increases in engine speed and decreases inspark advance generally result in engine speed decreasing. Likewisesince most small engine carburetors are initially set with a slightlyrich air/fuel mixture (and slightly open throttle valve setting),increasing the air/fuel mixture ratio (which makes the air/fuel mixtureleaner, for example from 9:1 to 11:1) will result in an engine idlespeed increase and decreasing the air/fuel mixture (which makes theair/fuel mixture richer, for example from 13:1 to 10:1) will generallyresult in an engine speed decrease.

In a representative system, the ignition timing control threshold may beset at plus or minus four (4) degrees of the normal ignition timing,where the degrees indicate the angular engine position relative to TDCor some other reference position at which the ignition spark isprovided. Once the ignition control threshold is exceeded on the highside (e.g. at +4°) the fuel mixture can then be leaned out to increasethe engine speed while maintaining the ignition timing within thethreshold, or even allowing a reduction in the magnitude of the ignitiontiming change from the nominal/normal ignition timing. Likewise, if theignition timing advance is reduced below the low threshold (e.g. −4°)the air/fuel mixture can be richened to reduce the engine speed whilemaintaining the ignition timing within the threshold, or even allowing areduction in the magnitude of the ignition timing change from the normalignition timing.

One representative control process 200 is generally shown in FIG. 9. Theprocess starts at 201, the engine speed is checked at 202 and adetermination is made at 204 as to whether the engine is idling or nearenough to idle for the process. In this example, the process is usedonly for engine idle and near idle operation and other strategies may beused when the engine is not at or near idle, if desired. If the engineoperation does not satisfy the first condition then the process may endat 205. If the engine operation satisfies the first condition, then itis determined in 206 whether the engine speed is within a desired rangefor idle or near idle operation. If the engine speed is within thethreshold, then the process may be started over, to again check engineidle operation as desired. This check may be run at any desired periodictiming.

If the engine speed is outside of the threshold, then it is determinedat 208 whether the maximum ignition timing adjustment has already beenmade (i.e. if the ignition timing is within a threshold range). If theignition timing is within its threshold, then the ignition timing may beadjusted at 210 up to its threshold in one or more iterative steps orotherwise, as desired. If addition ignition timing is not availablewithin that threshold, then the process continues to 212 where theair-fuel mixture may be adjusted to provide a desired engine speedchange. The process may continue to check engine speed periodically(such as every revolution or at longer intervals) or the process mayend. The process may be run again, as desired, to monitor and change asneeded the engine idle speed operation.

Additional control calibration techniques can be applied to furtherrefine the idle speed stability and accuracy. Things like lookingstatistically at the number of revolutions or time the ignition timinghas exceeded the threshold or the standard deviation of the ignitiontiming value exceeding the threshold value can further refine thestrategy. Among other things, the normal ignition timing may be altered,and or the ignition timing control threshold adjusted, depending uponactual engine operating data.

By knowing which phase the engine is operating on the total electricalpower consumption used by the engine can be greatly reduced when onlyconsuming electrical power every other revolution. This is particularlybeneficial at low engine speeds when the power generation capacity ofthe ignition module is often less than the required power to control theengine every revolution (ignition timing and secondary electrical loadssuch as an electronic carburetor).

Four stroke engines have four distinct cycles; intake, compression,power and exhaust. These four cycles take place over two enginerevolutions. Beginning at TDC the intake cycle begins and at thesubsequent BDC the intake cycle ends and the compression stroke begins.At the next TDC the compression cycle is completed and the power strokebegins. At the next BDC, the power cycle is completed and the exhauststroke begins. Hence, the intake and compression cycles occur in oneengine revolution and the power and exhaust cycles occur in the nextengine revolution. The time for the engine revolution including theintake and compression cycles is greater (slower engine speed) than thetime for the engine revolution power and exhaust cycles (faster enginespeed). This is largely due to losses from intake pumping andcompression resulting in the engine speed decreasing during the intakeand compression engine revolution. Conversely during the power orcombustion cycle the engine speeds up due to the increase in pressuredeveloped during a combustion event.

The difference in speed is detectable with the use of a microprocessorclock such as is found in digital ignition modules. Measuring the timefor an engine revolution may be performed on small engines that have asingle magnet group mounted on/in the flywheel. As the flywheel magnetrotates past the ignition module an electrical signal is produced thatcan be used as a crankshaft angle measurement. Every engine revolutionproduces one electrical signal therefore the time between these signalsrepresents the average engine speed for a single revolution. Furtherrefinement of this concept can be done with multiple magnet groupsthereby allowing detection of the individual engine cycles rather thanthe just the engine revolution that produces power. This also willresult in greater crankshaft angular resolution (ability to determinecrankshaft position) within a single engine revolution.

Since there can be a large amount of cyclic variation from revolution torevolution, it sometimes can be difficult to guarantee the determinationof the engine revolutions (e.g. the revolution that corresponds to theintake and compression cycles, or the revolution that corresponds to thepower and exhaust cycles).

To improve the accuracy of phase detection, a process that determinesengine speed for a number of engine revolutions may be used. An exampleof such a process is described below. At engine startup, an ignitionspark is provided every engine revolution, as is common, and a thresholdnumber of engine revolution speeds or time is recorded. In one example,the time for each of 20 engine revolutions is recorded, and this datamay be recorded in any suitable manner on any suitable device, such asbut not limited to a First-In-First-Out (FIFO) buffer. In this way, thelast 20 engine revolution times/speeds are stored. Of course, the datafor more or fewer engine revolutions may be used and 20 is just oneexample.

After a threshold number of engine revolutions, for example chosen topermit the engine speed to stabilize, the recorded engine revolutiondata is checked to see if an alternating pattern has occurred, forexample where every other revolution is longer than the interveningrevolutions. The second threshold may be any desired number of enginerevolutions, or it may simply be a time from engine start or otherengine event. In one example, the second threshold is 12 revolutionsalthough other numbers of revolutions can be utilized as desired.

The process may look at any number of engine revolution times/speeds todetermine if a desired pattern has occurred. For example, the processmay look at all 20 recorded engine revolution times to determine if thedesired timing pattern has occurred. And the process may continue until20 consecutive engine revolutions show a desired timing pattern, e.g.every other revolution being shorter or longer than the interveningrevolutions. This analysis may be conducted for a given number of enginerevolutions after engine starting, or some other chosen engine event.For example, in one form, this analysis of the last 20 revolutionsoccurs for only the first 50 engine revolutions after engine starting.This relatively short window may be chosen to reduce the likelihood thatthe engine operating will change (for example, due to throttle valveactuation) which would cause an engine speed change not due to thevarious engine cycle effects.

A general description of the process 300 is shown in FIG. 10. At 306 itis determined if the desired number of consecutive (or perhaps athreshold percentage of) engine cycles indicates a desired pattern ofengine speed changes within a desired window of engine revolutions, thenthe process may continue to 308 wherein an ignition event is skippedevery other revolution. In one form, the ignition event is provided onlyduring the engine revolution including the power cycle and an ignitionspark is not provided during the engine revolution including the intakeand compression cycles. This avoids wasting an ignition spark and theenergy associated therewith. Also, fuel may be provided from thecarburetor or other fuel supplying device only during the correct enginerevolution or cycle, e.g. the engine revolution including the intake andcompression cycles, which is noted at 310. In this way, more efficientengine operation can be achieved to conserve electrical energy, conservefuel and reduce engine emissions.

When ignition events are skipped, a check of the engine speed can beperformed at 312 to ensure that the engine speed is not adverselyaffected, which could mean that the incorrect spark is being skipped.For example, if after a couple of skipped ignition events the enginespeed decreases beyond a threshold, this could mean that the ignitionspark needed for combustion was skipped. If an engine speed decrease isdetected, the ignition spark may be provided every engine revolution at314, or the skipped spark may be changed to the other engine revolutionand a check of the engine speed performed to see if the ignition sparkis being provided during the correct engine revolution.

The engine speed check may occur as the revolutions are recorded, or thecheck may look to previously recorded data for engine revolutions. Inthe example below, the most recent engine revolution recorded is rpm[0],the previous revolution is rpm[−1], the revolution before that isrpm[−2], etc. For the engine cycle/revolution detection to be consideredsuccessful, then the recorded revolution data needs to satisfy:(rpm[0]>rpm[−1]) AND (rpm[−1]<rpm[−2]). If satisfied, then the reviewcontinues to (rpm[−2]>rpm[−3]) AND (rpm[−3]<rpm[−4]). And so on until athreshold number of revolutions satisfy the pattern, where the thresholdnumber of revolutions needed can be any number up to and including allof the revolutions stored on the buffer. When the threshold number ofrevolutions satisfies the pattern, the system moves to the next phasewhich is to skip ignition events and provide fuel in accordance with thedetermined engine revolutions and the engine cycles occurring duringthese revolutions.

If the desired number of consecutive engine revolutions does notindicate a desired pattern of engine speed changes within a desiredwindow of engine revolutions (a “no” response at 306), then the ignitionevent may be terminated or not provided every other engine revolutionfor a determined number of engine revolutions. While in FIG. 10 the“skip ignition” step is shown as 308 in either determination from 306,where the threshold revolution criteria is satisfied at 306, the “skipignition” occurs based on this data, and when the criteria is notsatisfied, the skip ignition occurs based on something else. When toskip the spark may be chosen based upon an analysis of the recordedrevolutions (e.g. if more revolutions are slower than the others, on anevery other revolution basis, then this information may be used for theinitial spark skip even though the full threshold of revolutions did notsatisfy the set rule) or the next scheduled or any subsequent spark maybe skipped without regard to the recorded data. In one example, anignition event is skipped every other engine revolution for four enginerevolutions. If the engine speed does not decrease beyond a thresholdafter the skipped ignition events (as determined at 312), then thesystem considers that the ignition events were skipped during thecorrect engine revolutions. Subsequent ignition events may also beskipped during corresponding engine revolutions, and the fuel supply mayalso be controlled based on this timing. If, however, the engine speeddoes decrease beyond a threshold after the skipped ignition events, thenthe ignition events were skipped during the incorrect enginerevolutions. Subsequent skipped ignition events can then be set to theother engine revolutions and the fuel supply to the engine may also becontrolled based on this timing. Subsequent checking of engine speed mayalso be used to ensure the skipped ignition events are not adverselyaffecting engine speed.

Additionally statistical analysis of the alternating pattern can beperformed to provide an accurate determination of engine cycle/phasewhen there are larger amounts of cyclic variation or small differencesin cyclic engine speed. This type of analysis can be done to effectivelyreduce the determination time required.

In general, most small engines idle run quality is best when theignition timing is slightly retarded and the air/fuel mixture is nearoptimum. But during these conditions most small engines will alsoexperience performance problems during fast transient accelerations anddecelerations. To help alleviate this issue, both rapidly advancing theignition timing and enriching the fuel mixture for several revolutionscan improve engine performance. The difficulty in doing so on small lowcost engines stems from not having sensors to indicate that a rapid loadchange is starting to occur, such as a throttle position sensor or amanifold pressure sensor.

This disclosure describes how using the raw ignition signal along withcontrolling ignition timing and fuel mixture on a cyclic basis canimprove these fast transient conditions. Controlling ignition timingbased on transient changes in the ignition signal has been described inU.S. Pat. No. 7,198,028. Use of these detection methods can now beapplied to rapidly change the ignition timing and also rapidly changethe fuel mixture via an electronic fuel control actuator in thecarburetor, thereby improving the acceleration and decelerationqualities of the engine.

One example of a fuel control actuator includes a solenoid that blocksat least a portion of the fuel flow during the engine intake cycle. Asan example, if the blocking action normally occurs at the end of theintake cycle, the fuel mixture can be leaned-out by activating anormally open solenoid at an earlier crank angle position, in otherwords by blocking at least some fuel flow for a longer duration of theintake cycle. Many possible calibration configurations exist but anexample might be activating the solenoid at 200° ATDC results in aLambda value of 0.78 (rich) and a solenoid activation angle of 145° ATDCresults in a Lambda value of 0.87 (9% leaner). Therefore, changing thesolenoid activation angle to a richer Lambda setting (less fuel flowblocking) during transient accelerations can improve the engine responseand performance. This enriching of the mixture during acceleration canbe tailored up to a full rich setting (no solenoid activation, so nofuel flow blocking) and also controlled for any number of enginerevolutions after the detection of a transient change has occurred.Additionally, the fuel flow control can be optimized in any number ofways, for example, running full rich (no fuel flow blocking) for acertain number of revolutions and decreasing the richness of the fuelmixture (i.e. increasing the fuel flow blocking) at a set rate for acertain number of additional revolutions. In just one of nearlylimitless examples, no fuel flow blocking may be provided for 3revolutions and the richness may be decreased (i.e. increased fuel flowblocking) for 10 revolutions. Many additional options for the actualcontrol calibration exist. Likewise control of the decelerationperformance can be improved through similar control techniques, and inat least some implementations, the richness of the fuel mixture can beincreased (i.e. decreasing the fuel blocking) during the decelerationevent. During acceleration, the ignition timing may also be advanced upto its maximum advancement, which may be a predetermined and/orcalibrated value relative to a nominal or normal ignition timing for agiven engine operating condition. During deceleration or come-downperiods, the ignition timing may be retarded for a desired time (suchas, but not limited to, a certain number of revolutions). When toalter/retard/advance the ignition timing and by how much to alter thetiming may be predetermined or calibrated values. In this way, theignition timing and fuel control may be adjusted together or in seriesduring acceleration and deceleration of the engine.

They cyclic engine speed variation may also be used to determine otherengine operating parameters, such as the type of tool or load beingdriven by the four stroke engine. In one example, an engine powereddevice, shown as a multi-tool gardening or landscape device 400, such asshown in FIG. 11, may be used with a string cutting tool 402 includingone or more strings, a blade-type cutting tool 404 including one or moreblades, a saw 406 and a hedge trimmer 408. Other tools or loads may beconnected to and driven by the engine, as desired. The remainder of thisdescription will focus on a string tool and blade tool, although thedisclosure may be applicable to different tools or engineattachments/loads.

In use, the string tool tends to provide a smoother pattern ofalternating engine revolutions that alternate between faster and slowerrevolutions (e.g. in a four stroke engine) than the blade tool. Anengine driving a string tool may provide relatively long sequences ofalternating faster and slower revolutions. This may be due at least inpart to the increased mass and moment of inertia of the blade(s)compared to the lighter string(s) which cause an engine driving theblade to operate less smoothly or steadily. This difference in patternsbetween the string and blade type cutting tools is more easily seen on adynamometer or the like, but is more difficult to determine in normaloperation and while the tool is under load (e.g. cutting grass orweeds).

In at least certain implementations, the engine speed may be determinedeach revolution and compared to the prior revolution. The engine speedeach revolution (e.g. the length of time for each revolution) is checkedover a certain number of revolutions to determine how many revolutionsfit the expected pattern of alternating faster and slower revolutions.Based upon this information, an indicator may be developed that relatesto the number of revolutions that fit the expected pattern. Thisindicator may be a simple count of the number of revolutions that fitthe pattern over a given number of revolutions, or the number ofrevolutions that do not fit the pattern over a given number ofrevolutions, or some combination of the two (e.g. a ratio), or somepattern within the given number of revolutions (for example withoutlimitation, a certain number of revolutions in a row that correspond tothe expected pattern, followed by one or more revolutions that do notcorrespond to the expected pattern, followed by a certain number that docorrespond to the expected pattern).

By way of one non-limiting example, the indicator may be developed byexamining the most recent thirty-two engine revolutions. Of course,thirty-two is just one example and any number of revolutions could beused with one contemplated range of revolutions that may be used beingbetween sixteen and five hundred and twelve, and a factor of two neednot be used. After the engine has been running for at least thirty-tworevolutions, each new revolution will replace the oldest of thethirty-two revolutions being tracked, and so on, for a running total ofthirty-two revolutions. In at least some implementations, eachrevolution within the thirty-two revolutions being tracked at any giventime that does not meet the expected pattern is counted and anaccumulated total or tally of such revolutions is maintained over thethirty-two revolutions being tracked. The indicator is developed as afunction of the number of revolutions that are counted in this manner.The indicator may be the same as the actual number of revolutions thatwere counted, or the indicator may be any assigned value thatcorresponds to the number of revolutions counted. For example, theindicator may include a scale of 1 to 10 where a 10 indicates a highnumber of counted (i.e. nonconforming) revolutions corresponding torough or inconsistent engine operation, and a 1 indicates a very lownumber of counted revolutions corresponding to smoother and moredesirable or consistent engine operation.

As noted above, at least in certain engines with certain blade-typecutting tools, the engine operation is not as smooth or consistent as itis with the same engine driving a string tool. Hence, in the exampledescribed above, a higher indicator number is expected when a bladecutting tool is used than when a string cutting tool is used. For agiven engine, at a certain engine speed, multiple discrete engine speedsor over a range of engine speeds, typical indicator values can bedetermined and stored, and this can be done on a dynamometer or othertest equipment, or in use of the particular device, for example in atest where actual or simulated grass or weeds are cut.

Representative indicator values from such tests or calibrations at anyengine speed, at different engine speeds, or over a range of enginespeeds may be stored in memory. The memory may be accessible by aprocessor (such as the ignition control microprocessor described above)during use of the device for comparison against actual indicator valuesdetermined during actual use of devices. Actual indicator valuesobtained in use of the engine can then be compared against stored valuesto determine if the engine is being used with a blade cutting tool or astring cutting tool (or whatever two different loads a particular devicemight have, not limited to weed trimmers). A smoothing average of acertain number of cycles (e.g. 65 revolutions) may be used to reduce thevariability in the indicator value, such as that which might occurduring normal cyclic variation in engine operation, and which is notnecessarily attributable to the load/tool being driven by the engine.

The determination of the operating mode for or load on the device (inthe example being discussed, whether a blade tool or string tool is usedon a weed trimmer) can be used to aid in conducting the engine speedtests and air/fuel ratio adjustments disclosed herein. In the weedtrimmer example, the greater mass and rotational inertia of the bladecutting tool might cause an engine driving a blade cutting tool to besomewhat slower to respond to changes in the air/fuel ratio. Hence, whenit is determined that the engine is driving a blade cutting tool, moretime might be allowed to elapse after an air/fuel ratio change (moretime than might be needed with a string cutting tool) to permit theengine operation to stabilize under the new conditions. This can improvethe air/fuel ratio adjustment process and prevent the less stable andslower to respond engine operation that results from the engine drivinga blade cutting tool from erroneously affecting the results of theengine speed test and related processes. In other words, if sufficienttime were not permitted to allow the engine driving a blade cutting toolto adjust to the new operating conditions, the less stable engineoperation may result in a false engine speed test result and cause anincorrect air/fuel ratio adjustment (e.g. an enleanment or enrichment ofincorrect magnitude).

FIG. 12 is a graph of various engine operating parameters and anindicator value during an engine test, in other words, not during realworld operation of the device. The device being tested was a weedtrimmer equipped with a string tool driven for rotation by the engine.The number of engine revolutions is plotted along the x-axis (from zeroto 35,000 revolutions). Along the y-axis engine speed in rpm is shown byline 420, solenoid start angle by line 422, the indicator value by line424 and the lambda value by line 426. The solenoid start angle indicatesthe degrees after TDC at which the solenoid is actuated to alter theair/fuel ratio. A lower or decreasing start angle causes enleanment andan increasing or larger start angle causes enrichment of the air/fuelmixture.

During this test, the engine was at an idle speed of about 3,000 rpmfrom zero revolutions until about 2,400 revolutions. For starting andwarming up of the engine at idle, the solenoid start angle was increasedfrom about 210 degrees to about 250 degrees and an already rich fuelmixture (lambda about 0.72) was enriched (lambda about 0.7). Then theengine speed was increased to about 8,000 rpm between 2,400 revolutionsand about 4,000 revolutions, and at this time, the engine was not underany operating load (e.g. string was not cutting weeds or grass at thistime). At 2,400 revolutions, the solenoid start angle was reduced toabout 160 degrees which enleaned the air/fuel mixture to a lambda valueof about 0.78. This solenoid start angle was maintained until about9,500 revolutions had occurred. At about 9,000 revolutions, the toolbegan to cut grass and weeds and the engine was operating under load. Atthis time, the solenoid start angle was reduced about once everythousand revolutions until about 21,000 revolutions had occurred and thestart angle was at about 120 degrees. This enleaned the fuel mixturefrom a lambda of about 0.78 to about 1.0. During this time, engine speedreduced from about 7,500 rpm to about 7,000 rpm. At about 25,500 to26,000 revolutions, the engine speed was decreased to idle, and thesolenoid start angle was greatly increased to provide additional fuel tosupport the comedown event (lambda dropped to about 0.7 during thecomedown event). At about 26,000 revolutions until about 32,000revolutions, the engine was accelerated to about 11,000 rpm, and thesolenoid start angle was reduced back to about 120 degrees, and thenfurther over time to about 110 degrees to enlean the air/fuel mixtureduring acceleration, and lambda varied between about 0.96 and 1.1. Inthis test, the solenoid start angle was increased between 30,000 and32,000 revolutions to enrich the air/fuel mixture. Finally, the solenoidstart angle was reduced back to about 120 degrees before being increasedat about 34,000 revolutions to support another comedown event afterwhich the test ended.

The graph of FIG. 12 shows that the indicator value tracks the lambdavalue fairly well. Between lambda values of about 0.78 and 0.88, theindicator value is generally between about 2 and 4. Leaner fuel mixtures(lambda above 0.88) resulted in a higher indicator value which, in thisexample, means that the engine was running less smoothly, with morerevolutions that did not meet the expected pattern. For example, in thistest, a lambda value of about 0.94 resulted in an indicator value ofabout 6 and a lambda value of between about 1.04 and 1.13 resulted in anindicator value between 8 and 10.

FIGS. 13 and 14 compare indicator values between an engine driving astring tool and an engine driving a blade tool, where lambda and enginespeed are generally constant. FIG. 13 relates to an engine driving astring tool with the engine running at about 8,500 rpm (engine speed isshown by line 430) with a fuel mixture at lambda 0.8 to 0.9 (shown byline 432). The indicator value is between 0 and 1 (shown by line 434)which indicates that the engine is running very smoothly with a lownumber of revolutions that do not match the expected pattern ofalternating faster and slower revolutions. FIG. 14 relates to an enginedriving a blade tool with the engine running at about 8,000 to 8,500 rpm(line 436) and also with a fuel mixture at lambda 0.8 to 0.9 (line 438).In this example, the indicator value (line 440) ranges between 3 and 6and the engine speed is less steady or consistent than with the stringtool. The difference in the indicator values of the engine driving theblade tool versus the engine driving the string tool are readilyapparent. Thus, the indicator value can be used to determine the type oftool being driven by the engine, as noted above. This determination can,in turn, allow better control of the engine operating condition by, forexample, accommodating slower reaction times for an engine driving ablade tool. Of course, as noted above, the string and blade tools for aweed trimmer are just one example for use of the system describedherein. The system could be used on or with other tools that may be usedto drive different tools or different loads, or where the engine mayexperience a different load in use (including, but not limited to,blades of different size or weight), for example, lawn tractors,generators or rototillers.

Further, the indicator and methods described herein could be used todetermine when the air/fuel mixture is or is almost too lean, in otherwords, at or near a “lean limit”. When the fuel mixture is at or nearits lean limit (for some engines this is at lambda 1 or above) furtherenleanment may be reduced or avoided. Here, when the engine is at ornear its lean limit may be determined as a function of the indicator. Anindicator value threshold may be implemented where an indicator levelabove a certain level is indicative that the engine is running too roughfor further enleanment. A rate of change of the indicator level inresponse to a series of enleanments may be used to determine a leanlimit, an amount of variability in the indicator for a given air/fuelratio over time might also be used. This might provide a low costalternative to using a lambda sensor, even a narrow-band lambda sensor.

A non-limiting example of a lean limit routine implementation in a4-stroke single cylinder engine is to examine the pattern of the enginespeed during the intake and exhaust strokes over 32 revolutions of thecrankshaft to determine how many of the 16 pairs of intake and exhauststrokes do not meet the normal pattern (intake stroke has a lower speed[rpm] than its immediately preceding exhaust stroke) and thus is anoutlier. If half or more of these pairs do not follow the normal pattern(for example 8-10 of the 16 pairs are outliers) the engine has reachedor exceeded its lean limit (usually at about 1) and the fuel to airratio is rapidly enriched, such as by about 5%. This routine may becontinuously repeated to monitor, and if need be, enrich the fuel to airratio of the engine to minimize or avoid engine operation with anexceedingly lean fuel to air ratio. As skilled persons know, prolongedengine operation with an excessively lean fuel to air ratio at highengine speeds (such as greater than 6000 rpm) will result in engineoverheating and sometimes catastrophic failure (seizure), and at idleengine speed, stalling or stopping of the engine.

In at least some implementations, a method of distinguishing between twoloads being driven by an engine may include the steps of:

determining engine speed at defined intervals;

comparing a second engine speed against a previously determined firstengine speed;

determining if the second engine speed fits an expected pattern ofengine speeds; and

counting either the number of incidents where the second engine speeddoes not fit the expected pattern, or the number of incidents where thesecond engine speed does fit the expected pattern, or some combinationof these two.

The method may be used with a four stroke engine and the definedinterval may be one engine revolution. In the method, the time or speedof each engine revolution may be compared to the time or speed for theimmediately prior engine revolution and the expected pattern includesalternating faster and slower revolutions. The method may also includethe step of tallying all counted incidents over a predetermined numberof engine revolutions, as well as the step of comparing the tallyagainst stored data, where the stored data includes information relatingto at least two engine loads, to determine which of the engine loads isbeing driven by the engine based on the tally comparison.

FIG. 15 illustrates lambda versus RPM curves for a spark ignitedgasoline powered four stroke engine with a displacement of 25 cubiccentimeters (cm³). This is a single cylinder engine with a diaphragmcarburetor 4 of the type shown in FIG. 1 which includes a mixturecontrol device 8, such as a normally open solenoid valve, an ignitionsystem 10, control system 14, and a control circuit such as the controlcircuit 38 with a microcontroller 60. This engine was designed to beused on a lawn trimmer which may have a working head such as a stringtrimmer or a rotary blade trimmer. This engine may have a peak poweroutput in the range of about 6,000 rpm to 11,000 rpm with a lambdaair-to-fuel ratio of substantially 0.85.

FIGS. 16A and 16B combined, provide a flow chart of at least some of thesteps of a more detailed and presently preferred fuel control processwhich may be used to determine and control the air-to-fuel ratio of asmall displacement engine which may have a single cylinder with adisplacement in the range of about 15-60 cubic centimeters (cm³)including such an engine normally operating in the range of about3,000-11,000 rpm such as, for example, the spark ignited gasolinepowered single cylinder four stroke engine with a 25 cm³ displacementwith the lambda curves of FIG. 15. FIG. 17 illustrates a graph of enginespeed and lambda data of this engine having the lambda versus RPM curvesof FIG. 15 during a portion of the process of the flow chart of FIG. 16Aand 16B.

As shown in FIGS. 16A and 16B an engine control process 450 begins at452 typically on or shortly after engine start up and proceeds to step454 to determine if the engine is operating at a speed R₁ significantlygreater than its idling speed, such as in the range of 6,500-10,000 rpm.If not, it returns to the start and repeats step 454 until it hasdetermined that the engine is operating in the speed range R₁ and if so,proceeds to both the steps 456 and 458. In step 456, the microcontrolleraccumulates and stores the engine speed for 80 consecutive revolutions(F_(RPM)—80) on a first in, first out (FIFO) basis for use in adownstream step.

In step 458, it is determined whether or not the engine is operating ata relatively constant or stable speed by determining whether the enginespeed varied by less than 250 rpm over a period of 50 consecutiverevolutions. If not, the process returns to step 454. If so, the processadvances to steps 460 and 462. In step 460, microcontroller counts anumber of consecutive engine revolutions, such as 200 revolutions, andwhen it reaches 200 revolutions returns the process to step 454 andbegins counting the next 200 engine revolutions. Thus, all of theremaining steps are accomplished within 200 engine revolutions oraborted and returned to step 454.

In step 462, either a total or average engine speed for 6 revolutions(F₁ rpm—6) is determined and held in a buffer immediately beforestarting a fuel mixture enleanment step 464. In step 464, theair-to-fuel ratio supplied by the carburetor to the operating engine isenleaned for a fixed number of engine revolutions significantly greaterthan F₁ rpm—6 such as, for example, 50 revolutions. In step 466, theengine speed is determined for a small number of revolutions near or atthe end of the enleanment of step 464, such as the last six revolutionsof the enleanment (F₂ rpm—6) and stored for potential use in somesubsequent steps.

After ending of the enleanment, the process may advance to step 468 todetermine whether the engine has recovered from the enleanment after theair-to-fuel ratio returns to that used before the start of theenleanment. In step 468, a comparison is made between the engine speedF₁ rpm—6 (just before enleanment) to determine whether within 75consecutive engine revolutions it becomes approximately equal toF_(RPM)—80 determined in step 456. If not, the remainder of the processis aborted and it returns to the beginning of step 454. If step 468determines the engine speed has recovered within 75 revolutions, theprocess may then proceed to step 470 which determines and stores thedifference (Δrpm) between the engine speed near or at the end of theenleanment (F₂ rpm—6) and the engine speed just before starting theenleanment (F₁ rpm—6). Desirably, but not necessarily, this Δrpm isstored for at least a few repetitions of the steps of 454 through 468,to provide several Δrpm values (Δrpm 1-n) such as, for example, 1-5values. The Δrpm 1-n values may be all substantially the same, or somepositive and some negative. After obtaining and storing 1-n Δrpm values,the process may advance to step 472 which determines whether there isany significant change in any of the n values of Δrpm such as 5 values.If all 5 values fall within a predetermined range of speed change, sucha −85 rpm to +100 rpm, step 472 considers this to be no substantialchange and advances to step 474 which actuates the solenoid 8 to make arelatively small enleanment change in the air/fuel ratio such as 0.25%or a quarter of one percent and at step 476 the microcontroller changesthe solenoid open time to do so.

If step 472 determines that any of the Δrpm 1-n values were asubstantial change in engine speed (outside of the −85 to +100 rpmthreshold), the process advances to step 478 which determines whethersome fraction or portion of the speed changes such as three out of fivewere either positive Δrpm or negative Δrpm within 25 engine revolutionsand if so, advances to step 480 which determines a relatively largechange of the air/fuel ratio such as 5% should be made for the nextseries of n Δrpm values and advances to step 476 to control the solenoidto affect this relatively large change of the air/fuel ratio. If step478 determines that 3 of the 5 Δrpm values were neither positive nornegative within 25 engine revolutions, the process may proceed to step482, which determines whether at least 3 of these 5 Δrpm values wereeither positive or negative within 50 engine revolutions, and if so,proceeds to step 484, which determines the solenoid open time for amedium change of the air/fuel ratio such as 2 ½% and then advances tostep 476 to control the solenoid to affect this medium change of theair/fuel ratio. In each of steps 480 and 482 if 3 of the 5 Δrpm changes(F₂−F₁) are positive, an enrichment of the air-to-fuel ratio of 5% or 2½% respectively, is determined and made, or if 3 of the 5 Δrpm changesare negative, an enleanment of the air-to-fuel ratio of 5% or 2 ½%respectively, is determined and made. In step 482, if 3 of the 5 Δrpmspeed changes are neither positive nor negative, then no change is madein the air-to-fuel ratio and the process returns to the beginning ofstep 454.

In step 476, after each change of the solenoid closed or open time, theprocess returns to the beginning of step 454 to develop an updated setof Δrpm 1-n values. Since the enleanment step 464 and recovery step 468together are carried out in 125 engine revolutions, and in step 460 thecounter aborts the process after each 200 engine revolutions, the enginetypically will reach a stable operating condition before the beginningof the next set of Δrpm 1-n values is determined and saved in step 470.

As illustrated in FIG. 17, if the engine is operating at an A/F ratio oflambda 0.835 at an F₁ rpm—6 speed of about 9,380 rpm just before its A/Fratio at 490 was enleaned 5% or to a lambda of about 0.877 for 50revolutions, this resulted in an average engine speed for the last 6revolutions of enleanment (F₂ rpm—6) of about 9,305 rpm, and after thisenleanment the F_(RPM)—6 engine speed recovered at 492 as determined instep 468 in about 30 revolutions, and as determined in step 458 over 250revolutions the engine speed varied by less than 200 rpm. Thus, the Δrpm[F₂(F_(RPM)—6 last)—F₁(F_(RPM)—6 before start)] of −75 rpm is a validΔrpm, as determined and saved in step 470. The next enleanment at 494,which due to the counter of step 460, starts 200 revolutions after thefirst enleanment at 490, of the A/F ratio by 5% to a lambda of about0.835 for 50 revolutions resulted in an average engine speed F₂ of thelast 6 revolutions of this enleanment of 9,265 rpm. The average enginespeed F₁ for the 6 revolutions just before the start of this nextenleanment is 9,370 rpm. After this second enleanment the engine speedrecovered at 496 within 75 revolutions as determined in step 468 and asdetermined in step 458 the ΔR₁ for this second enleanment was about 220rpm. Thus the second enleanment produced a valid Δrpm₂ engine speedchange of −105 rpm as determined and stored in step 470.

The process 450 may be repeated many times per minute of engineoperation and therefore can provide extremely good control of thedesired air/fuel ratio of the operating engine over a wide range ofoperating speeds. For example, if the engine was running for one fullminute at a speed in the range of 9,000-9,200 rpm the process couldobtain as many as about 45 sets of valid values for Δrpm 1-5 on which tomake any needed adjustments in the A/F ratio of the fuel mixturesupplied by the carburetor to the running engine and with the engineoperating for one minute at an essentially constant speed in the rangeof 7,000-7,200 rpm the process could obtain about 35 sets of valid Δrpm1-5 values on which to make any needed adjustments in the A/F ratio.

The number (x) of engine revolutions in each of steps 456 and 468 issignificantly greater than the number of engine revolutions in each ofsteps 462 and 466, for example, may be at least 6 times greater, anddesirably at least 9 times greater. The period of enleanment of step 464needs to be long enough to potentially provide a significant change inengine speed, and short enough that it does not significantly adverselyaffect engine performance. For example, in step 464 the period ofenleanment may be at least 3 times, and desirably 7 times greater thanthe number of engine revolutions of step 462 or 466. The recovery periodof step 468 may be sufficient for the engine to return to a speed atleast substantially equal to its speed just before beginning theenleanment of step 464, for example, at least for the same number ofengine revolutions as the period of enleanment, and desirably at least1.25 times such engine revolutions of enleanment.

For a gasoline powered spark ignited single cylinder 4-stroke enginewith a displacement of 15-60 cm³, the step 454 engine speed R₁ may be atleast 4,500 rpm and desirably at least 5,000 rpm, ΔR₁ of step 458 may beat least 100 rpm for at least 20 revolutions, F₁ of step 462 and F₂ ofstep 466 may be for at least 3 revolutions, the enleanment of step 464may be for at least 10 revolutions, and F_(RPM) of step 456 and therecovery of step 468 may be for at least 20 revolutions.

For a gasoline powered spark ignited single cylinder 2-stroke enginewith a displacement of 15-60 cm³, the step 454 engine speed R₁ may be atleast 4,000 rpm and desirably at least 7,000 rpm, ΔR₁ of step 458 may beat least 100 rpm for at least 20 revolutions, F₁ of step 462 and F₂ ofstep 466 may be for at least 3 revolutions, the enleanment of step 464may be for at least 20 revolutions, and F_(RPM) of step 456 and therecovery of step 468 may be for at least 40 revolutions.

Since the only sensor required for implementation of the process 450 isthe speed of the running engine, and this speed is already sensed anddetermined by the control circuitry 38 to select and provide the desiredignition timing of the operating engine, this process may be implementedwithout any additional sensors of other engine operating parameters andby the use of processes such as the process 450 implemented byappropriate software executed by the microcontroller and othercomponents of the control circuit 38 to determine and change as neededthe A/F ratio for efficient operation of the engine by controlling theopen time or the closed time of a solenoid actuated valve controllingthe quantity of fuel in the air/fuel mixture supplied by the carburetorto the running engine.

The process 450 does not require a carburetor throttle valve sensor,since in step 458 it is determined whether or not the engine speedchange due to fuel enleanment probably was also caused by some otheraction such as a change in the extent of the opening of the carburetorthrottle valve, and if so, it returns to step 454 to begin anotherrepetition of the process 450.

While the forms of the invention herein disclosed constitute presentlypreferred embodiments, many others are possible. It is not intendedherein to mention all the possible equivalent forms or ramifications ofthe invention. It is understood that the terms used herein are merelydescriptive, rather than limiting, and that various changes may be madewithout departing from the spirit or scope of the invention.

1. A method of determining if an engine is operating at least near alean limit of its air to fuel ratio comprising the steps of: determiningfor a plurality of engine cycles the number of such engine cycles inwhich the engine speed either follows the normal pattern or the numberof such engine cycles are outliers from such normal pattern; and if lessthan half of the engine cycles of such plurality follow the normalpattern or at least half are outliers from the normal pattern enrichingthe fuel to air ratio.
 2. The method of claim 1 wherein for each enginecycle of the plurality of engine cycles it is determined whether or noteach pair of engine intake and exhaust speeds follows the normalpattern.
 3. The method of claim 2 wherein if less than half of theengine intake and exhaust speed pairs follow the normal pattern or atleast half are outliers from the normal pattern the fuel to air ratio isenriched.
 4. The method of claim 3 wherein the fuel to air ratio isenriched by at least 5%.
 5. The method of claim 1 wherein each pluralityof engine cycles includes at least 16 engine cycles.
 6. The method ofclaim 1 wherein for each engine cycle of the plurality of engine cyclesit is determined whether at least half of each pair of engine intake andexhaust speeds are outliers from the normal pattern and if so the fuelto air ratio is enriched.
 7. The method of claim 6 wherein eachplurality of engine cycles includes at least 16 successive pairs ofengine intake and exhaust engine speeds.
 8. The method of claim 1wherein each plurality of engine cycles includes at least 16 successivepairs of engine intake and exhaust engine speeds.
 9. The method of claim1 wherein it is determined whether for the plurality of engine cyclesthe engine speed is at least 5,000 rpm and if not the fuel to air ratiois not enriched.